package com.gupao.singleton.lazy;

/**
 * 懒汉式单例，在使用第一次的时候会实例化
 * 优点：不浪费资源，在需要的时候才会实例化
 * 缺点：使用synchronized修饰方法后，线程数量多的情况下会出现运行性能不佳
 */
public class LazySimpleSingleton {

    private static LazySimpleSingleton lazySimpleSingleton = null;

    private LazySimpleSingleton(){}

    //将getInstance方法用synchronized修饰后，就不会出现多线程下创建多个实例的问题
    public synchronized static LazySimpleSingleton getInstance(){
        if(lazySimpleSingleton == null){
            lazySimpleSingleton = new LazySimpleSingleton();
        }
        return lazySimpleSingleton;
    }
}
